87803f777ee76c7be97c6e9f341a778daec066a8,tests/frontend/org/voltdb/regressionsuites/TestSQLFeaturesNewSuite.java,TestSQLFeaturesNewSuite,testTableLimitAndPercentage,#,141
Before Change
e = null;
try {
vt = client.callProcedure("CAPPED2.insert", 2, 2, 2).getResults()[0];
} catch (ProcCallException ex) {
e = ex;
assertTrue(ex.getMessage().contains("CONSTRAINT VIOLATION"));
After Change
public void testTableLimitAndPercentage() throws Exception {
System.out.println("STARTING TABLE LIMIT AND PERCENTAGE FULL TEST......");
Client client = getClient();
VoltTable vt = null;
if(isHSQL()) {
return;
}
// When table limit feature is fully supported, there needs to be more test cases.
// generalize this test within a loop, maybe.
// Test max row 0
vt = client.callProcedure("@AdHoc", "select count(*) from CAPPED0").getResults()[0];
validateTableOfScalarLongs(vt, new long[] {0});
verifyProcFails(client, "CONSTRAINT VIOLATION\\s*Table CAPPED0 exceeds table maximum row count 0",
"CAPPED0.insert", 0, 0, 0);
vt = client.callProcedure("@AdHoc", "select count(*) from CAPPED0").getResults()[0];
validateTableOfScalarLongs(vt, new long[] {0});
// Test @Statistics TABLE
validStatisticsForTableLimitAndPercentage(client, "CAPPED0", 0, 0);
// Test max row 2
vt = client.callProcedure("CAPPED2.insert", 0, 0, 0).getResults()[0];
validateTableOfScalarLongs(vt, new long[] {1});
validStatisticsForTableLimitAndPercentage(client, "CAPPED2", 2, 50);
vt = client.callProcedure("CAPPED2.insert", 1, 1, 1).getResults()[0];
validateTableOfScalarLongs(vt, new long[] {1});
validStatisticsForTableLimitAndPercentage(client, "CAPPED2", 2, 100);
verifyProcFails(client, "CONSTRAINT VIOLATION\\s*Table CAPPED2 exceeds table maximum row count 2",
"CAPPED2.insert", 2, 2, 2);
vt = client.callProcedure("@AdHoc", "select count(*) from CAPPED2").getResults()[0];
validateTableOfScalarLongs(vt, new long[] {2});